How C differs from Java for Symbolic Program Execution
نویسنده
چکیده
Verificationsystems, test generators, debuggers, and compilers offten implement a symbolic execution framework. We have identified a small set of features in ANSI C, MISRA C, and C0 that may require special treatment or special considerations when migrating a symbolic execution framework for Java to a framework for a C dialect. For some of these language features we have developed symbolic execution rules that are implemented in the KeY-System.
منابع مشابه
The Symbolic Execution Debugger: a Productivity Tool for Java Based on Eclipse and KeY
We present the Symbolic Execution Debugger (SED), an extension of the Eclipse debug platform for interactive symbolic execution. Being based on symbolic execution, its functionality goes beyond that of traditional interactive debuggers. For instance, debugging can start directly at any method or statement and all program execution paths are explored simultaneously. To support program comprehens...
متن کاملCombining Symbolic Execution and Model Checking to Reduce Dynamic Program Analysis Overhead
This paper addresses the problem of reducing the runtime monitoring overhead for programs where fine-grained monitoring of events is required. To this end we complement model checking techniques with symbolic reasoning methods and show that, under certain circumstances, code fragments do not affect the validity of underlying properties. We consider safety properties given as regular expressions...
متن کاملGeneralized Symbolic Execution for Model Checking and Testing
Modern software systems, which often are concurrent and manipulate complex data structures must be extremely reliable. We present a novel framework based on symbolic execution, for automated checking of such systems. We provide a two-fold generalization of traditional symbolic execution based approaches. First, we define a source to source translation to instrument a program, which enables stan...
متن کاملJava program analysis by symbolic execution
Program analysis has a long history in computer science. Even when only considering the important aspect of termination analysis, in the past decades an overwhelming number of different techniques has been developed. While the programming languages considered by these approaches initially were more of theoretical importance than of practical use, recently also automated analyses for imperative ...
متن کاملReducing Test Cases with Causality Partitions
Automatic test case generation using symbolic execution suffers from the problem of path explosion: the number of paths to be explored may grow exponentially with the scale of a program. We believe that different paths may exhibit some similar program behaviors, thus it is unnecessary to explore all of the paths to generate test cases. In this paper, a novel model of program causality is propos...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2007